Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR adds comprehensive auditing functionality for plate sets, plates, and plate assay import events. The changes introduce audit event handlers to track creation, archival, restoration, and import events for plates and plate sets, while also consolidating validation logic for plates used in assay runs.
- Add audit event providers and events for tracking plate and plate set lifecycle changes
- Implement comprehensive auditing for plate/plate set operations including creation, deletion, archival, and assay imports
- Introduce
ValidateRunImportedPlateTriggerto consolidate plate validation checks into a single trigger
Reviewed Changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| WellTable.java | Updates column naming from SampleID to SampleId and adds audit configuration |
| PlateTable.java | Adds plate trigger factory and audit transaction management for deletions |
| PlateBean.java | Adds entity properties support with includeEntityProperties parameter |
| WellTriggerFactory.java | Adds new validation trigger and updates column references to use SampleId |
| WellData.java | Updates column reference to use SampleId naming |
| PlateTriggerFactory.java | New trigger factory for handling plate deletion auditing |
| PlateMapExcelWriter.java | Updates excluded fields to use SampleId naming |
| PlateSetAuditProvider.java | New audit provider for plate set events |
| PlateSetAuditEvent.java | New audit event class for plate set operations |
| PlateAuditProvider.java | New audit provider for plate events |
| PlateAuditEvent.java | New audit event class for plate operations |
| PlateSetImpl.java | Adds parent plate set ID property for auditing |
| PlateManagerTest.java | Updates method calls and column references for consistency |
| PlateManager.java | Major updates adding audit event handling and transaction management |
| PlateImpl.java | Adds source plate ID property and user accessor methods |
| AssayPlateMetadataServiceImpl.java | Adds plate import audit events and minor improvements |
| PlateSetDataGenerator.java | Updates column reference to use SampleId naming |
| PlateController.java | Minor variable name improvement |
| AssayModule.java | Registers new audit type providers |
| Trigger.java | Removes outdated documentation comments |
| AuditTypeEvent.java | Minor code formatting improvements |
| AbstractAuditTypeProvider.java | Code cleanup and formatting improvements |
| AbstractAssayTsvDataHandler.java | Minor import cleanup and null check improvement |
Comments suppressed due to low confidence (1)
assay/src/org/labkey/assay/plate/audit/PlateSetAuditEvent.java:1
- [nitpick] The audit record maps are hardcoded to only track the 'Archived' field. Consider creating a more comprehensive audit record that captures other relevant plate set properties that may have changed during the archive/restore operation.
package org.labkey.assay.plate.audit;
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
labkey-klum
reviewed
Sep 23, 2025
labkey-klum
reviewed
Sep 23, 2025
labkey-klum
reviewed
Sep 23, 2025
XingY
reviewed
Sep 23, 2025
labkey-klum
approved these changes
Sep 24, 2025
c5d70a2 to
2b9530c
Compare
2b9530c to
2e61263
Compare
XingY
pushed a commit
that referenced
this pull request
Sep 29, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rationale
Add auditing of plate sets, plates, and plate assay import events.
Related Pull Requests
Changes
PlateandPlateSetValidateRunImportedPlateTriggerto reduce burden of validation checks to a single call